#pragma once

#include "Graph.h"
#include "GUI.h"

#include "Game.h"

using namespace Graph_lib;

class Game;
class GamePiece;
class Player;
class Opponent;

class Board : public Window
{
public:
	static Board* get_instance();
	int square_width, square_height;

//private:
	Board();
	Board(Point xy, int w, int h, const string& title );

	void draw_board();
	static bool is_occupied(pair<int, int> position);
	static void wait_for_button();
	
	enum Player_type
	{
		none,
		player,
		opponent
	};
	vector< vector<Player_type> >positions;
	
	static void cb_next(Address buttonAddress, Address addr);
	void next();
};